Method and system for providing a collaborative event-share service

ABSTRACT

A method, a system and a computer readable medium for supporting collaborative media sharing among users at an event are disclosed. For example, the method creates an event-share group relating to an event, and provides an event tag to a plurality of members of the event-share group, where the event tag uniquely identifies the event-share group or the event. The method receives a captured media from at least one of the plurality of members, wherein the event tag is attached to the captured media and provides the captured media to the plurality of members.

This application is a continuation of U.S. patent application Ser. No.12/647,539, filed Dec. 27, 2009, now U.S. Pat. No. 8,862,663, which isherein incorporated by reference in its entirety.

The present disclosure relates generally to communication networks and,more particularly, to a method and system for supporting and enablingcollaborative media sharing among users, e.g., at an event.

BACKGROUND

Wireless network providers currently enable users to capture media onwireless endpoint devices and to share the media with others. Forexample, many mobile phones are now equipped with integrated digitalcameras for capturing still pictures and short video clips. In addition,many mobile phones are equipped to also store audio recordings. Wirelessnetwork providers allow users to send picture, video or audio files toother users on the same wireless network or even on different networks.Thus, a user at an event, such as a parent at a child's soccer game,could take photographs of the child in the game using a mobile phone andsend the pictures almost immediately via the wireless network to theuser's spouse or other relatives who may have been unable to attend thegame in person.

In addition, a user may accumulate large amounts of media that mayexceed the local storage capacity of the user's wireless endpointdevice. Of course, a user may also choose to store such media onto aserver, e.g., in a local area network, on the user's home computer orlaptop, on a compact disc, on an external drive, and/or in otherlocations and storage media. In each case, a user may also choose toshare the media with other users. For example, the user may sendpictures or video as email attachments, or may send a link with a URLfor the location of the media via email or instant message to otherusers. However, the user must know beforehand the other users with whomthe user wishes to share the media and must know how to reach the otherusers, e.g., via an email address, a telephone number, a mobile phonenumber, etc.

SUMMARY

In one embodiment, the present disclosure discloses a method, a systemand a computer readable medium for supporting collaborative mediasharing among users at an event. For example, the method creates anevent-share group relating to an event, and provides an event tag to aplurality of members of the event-share group, where the event taguniquely identifies the event-share group or the event. The methodreceives a captured media from at least one of the plurality of members,wherein the event tag is attached to the captured media and provides thecaptured media to the plurality of members.

In another embodiment, the method transmits a request to participate inan event-share group relating to an event, and receives an event tagwhich uniquely identifies the event-share group or the event. The methodtransmits a captured media to an application server deployed in thecommunication network, wherein the event tag is attached to the capturedmedia.

In yet another embodiment, the method transmits a request to participatein an event-share group relating to an event, and receives an event tagwhich uniquely identifies the event-share group or the event. The methodreceives captured media from an application server deployed in thecommunication network, wherein the event tag is attached to the capturedmedia.

BRIEF DESCRIPTION OF THE DRAWINGS

The teaching of the present disclosure can be readily understood byconsidering the following detailed description in conjunction with theaccompanying drawings, in which:

FIG. 1 illustrates an exemplary network related to the presentdisclosure;

FIG. 2 illustrates a flowchart of a method for creating and maintaininga collaborative event-share group;

FIG. 3 illustrates a flowchart of a method for enabling users to accessand participate in a collaborative event-share group; and

FIG. 4 illustrates a high-level block diagram of a general-purposecomputer suitable for use in performing the functions described herein.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe figures.

DETAILED DESCRIPTION

The present disclosure broadly discloses a method, a system and acomputer readable medium for supporting and enabling collaborative mediasharing among users, e.g., at an event. Although the present disclosureis discussed below in the context of wireless access networks andInternet Protocol (IP) Multimedia Subsystem (IMS) networks, the presentdisclosure is not so limited. Namely, the present disclosure can beapplied to packet switched or circuit switched networks in general,e.g., Voice over Internet Protocol (VoIP) networks, Service overInternet Protocol (SoIP) networks, Asynchronous Transfer Mode (ATM)networks, Frame Relay networks, cellular networks, wireless networks,and the like.

To better understand the present disclosure, FIG. 1 illustrates anexample network 100, e.g., an Internet Protocol (IP) MultimediaSubsystem network related to the present disclosure. An IP network isbroadly defined as a network that uses Internet Protocol to exchangedata packets. Exemplary IP Multimedia Subsystem (IMS) networks includeInternet protocol (IP) networks such as Voice over Internet Protocol(VoIP) networks, Service over Internet Protocol (SoIP) networks, and thelike.

In one embodiment, the network 100 may comprise a plurality of endpointdevices 102-104 configured for communication with the core IMS network110 (e.g., an IP based core backbone network supported by a serviceprovider) via an access network 101. Similarly, a plurality of endpointdevices 105-107 are configured for communication with the IMS corepacket network 110 via an access network 108. The network elements 109and 111 may serve as gateway servers or edge routers for the network110.

The endpoint devices 102-107 may comprise customer endpoint devices suchas personal computers, laptop computers, Personal Digital Assistants(PDAs), mobile phones, cellular phones, smart phones, email devices,messaging devices, and the like. The access networks 101 and 108 serveas a conduit to establish a connection between the endpoint devices102-107 and the Network Elements (NEs) 109 and 111 of the IMS corenetwork 110. The access networks 101 and 108 may each comprise a DigitalSubscriber Line (DSL) network, a broadband cable access network, a LocalArea Network (LAN), a Wireless Access Network (WAN), a 3^(rd) partynetwork, and the like. The access networks 101 and 108 may be eitherdirectly connected to NEs 109 and 111 of the IMS core network 110, orindirectly through another network.

Some NEs (e.g., NEs 109 and 111) reside at the edge of the IMS coreinfrastructure and interface with customer endpoints over various typesof access networks. An NE that resides at the edge of a coreinfrastructure is typically implemented as an edge router, a mediagateway, a proxy server, a border element, a firewall, a switch, and thelike. An NE may also reside within the network (e.g., NEs 118-120) andmay be used as a SIP server, a core router, or like device.

The IMS core network 110 also comprises a Home Subscriber Server (HSS)127, a Serving-Call Session Control Function (S-CSCF) 121, a MediaServer 125, and an Application Server 112 that contains a database 115.An HSS 127 refers to a network element residing in the control plane ofthe IMS network that acts as a central repository of all customerspecific authorizations, service profiles, preferences, etc.

The S-CSCF 121 resides within the IMS core infrastructure and isconnected to various network elements (e.g., NEs 109 and 111) using theSession Initiation Protocol (SIP) over the underlying IMS based corebackbone network 110. The S-CSCF 121 may be implemented to registerusers and to provide various services (e.g., VoIP services). The S-CSCFinteracts with the appropriate VoIP/SoIP service related applicationsservers (e.g., 112) when necessary. The S-CSCF 121 performs routing andmaintains session timers. The S-CSCF may also interrogate an HSS toretrieve authorization, service information, user profiles, etc. Inorder to complete a call that requires certain service specificfeatures, the S-CSCF may need to interact with various applicationservers (e.g., various VoIP servers). For example, the S-CSCF may needto interact with another server for translation of an E.164 voicenetwork address into an IP address, and so on.

The Media Server (MS) 125 is a special server that typically handles andterminates media streams to provide services such as announcements,bridges, and Interactive Voice Response (IVR) messages for VoIP serviceapplications. The MS 125 also interacts with customers for media sessionmanagement to accomplish tasks such as process requests.

The application server 112 may comprise any server or computer that iswell known in the art, and the database 115 may be any type ofelectronic collection of data that is also well known in the art. In oneembodiment, the application server 112 may comprise an event-shareserver that is configured to support and enable collaborative mediasharing among users, e.g., at an event (e.g., to create and maintain oneor more event-share groups). Accordingly, in one embodiment the database115 may store event-share media and tags to support and enablecollaborative media sharing among users, e.g., at an event, as discussedin greater detail below. Those skilled in the art will realize that thecommunication system 100 may be expanded by including additionalendpoint devices, access networks, network elements, applicationservers, etc. without altering the scope of the present disclosure.

The above IP network is only described to provide an illustrativeenvironment in which packets for voice, data and/or multimedia servicesare transmitted on networks. In one embodiment, the current disclosurediscloses a method and system for supporting and enabling collaborativemedia sharing among users, e.g., attending an event via an exemplarycommunication network (e.g., an IMS core network) as illustrated in FIG.1 and as further described below.

FIG. 2 illustrates a flowchart of a method 200 for supporting andenabling collaborative media sharing among users, e.g., at an event. Inone embodiment, one or more steps of the method 200 can be performed byone or more of the components of IMS core network 110. For example, inone embodiment one or more steps of the method 200 can be implemented byS-CSCF 121 or an event-share server such as AS 112. The method begins instep 205 and proceeds to step 210.

At step 210, the method creates at least one event-share group for anevent. For example, a network provider may provide an event-shareservice feature which is a feature that permits users who havesubscribed to the feature to participate in temporary event-share groupsfor sharing media with other users who are members of the same temporarygroup.

For example, a user may be attending a child's soccer game and wouldlike to participate in event media sharing for that game (i.e., the“event”) using his or her mobile endpoint device (e.g., a cellularphone, a mobile phone, a smart phone, and the like). Accordingly, themethod may receive a request from the user (e.g., via his or her mobileendpoint device) to participate in an event-share group for the soccergame. In one embodiment, the method first verifies or confirms that theuser has subscribed to an event-share service feature. If not, therequest is denied. On the other hand, if the method determines that theuser has subscribed to the event-share service feature, the method maydetermine if the user is the first user requesting to participate in anevent-share group for the particular event. In one embodiment, if themethod determines that the user is the first user requesting toparticipate in an event share group for a particular event, the methodcreates a new event-share group with the requesting user being the firstmember. Alternatively, organizers of an event such as a major sportingevent or concerts may provide advance notice of the event and the methodmay automatically set-up an event-share group for the event. Variousother scenarios and mechanisms for creating a new event-share group arepossible and are within the scope of the present disclosure.

Regardless of the manner in which an event-share group is created, themethod 200 proceeds to step 220 where the method assigns an event tag tothe event and/or event-share group for use by members of the event-sharegroup. The event tag may comprise any identifier that is attached to orstored with media that uniquely identifies the media as being related toa particular event and/or event-share group. In this manner, media thatis tagged with the particular event tag (e.g., the event tag is attachedto or stored with the media) can be easily identified as media belongingto a particular event, and/or event-share group. In one embodiment, anevent tag may comprise access type information on a picture, orcorrelated type information that is stored with a media file, such as avideo. In one embodiment, an event tag may comprise watermarking typeinformation on the media itself that could be encoded in, andtransmitted with the media itself, or alongside the media.Alternatively, an event tag could be simply a text tag that is stored inan access file along with the media. In one embodiment, the event tagmay be hidden information in a picture that may be detected by themethod and made available to other systems. In the case of music oraudio files, the event tag may comprise identifying information storedin a standard format, such as audio watermarking and the like.

In one embodiment, a plurality of user mobile endpoint devices isconfigured to capture pictures in EXIF (Exchangeable Image File Format).Under the EXIF standard, a picture has associated JPEG (Joint PhotographExperts Group standard) fields. In one embodiment, tag information(e.g., event tag information) is included in one or more of the JPEGfields. Alternatively, or in addition, in one embodiment a userdefinable field is created and configured to be populated with event taginformation. This allows greater flexibility in customizing the eventtags to effect event-sharing methods in accordance with the disclosure,and provides greater user-friendliness to users that are using the eventtags.

At step 230, the method 200 receives a request to join the event-sharegroup from a user. For example, a user may arrive at an event and beattempting to join an event-share group for the event. An event-sharegroup may have already been created if the user is not the first user atthe event requesting to participate in an event-share group.

In one embodiment, the method may provide a number of choices to theuser, e.g., a text message with a menu showing a plurality ofevent-share groups at an event or location. The user may then select oneof the existing event-share groups provided in the menu. For example,the user may be attending a child's soccer game at a large park withmany nearby soccer fields with several different games taking place atthe same time. In this example, there may be several likely choices forthe event identified by the method for presentation to the user. Forexample, in one embodiment, the method may identify likely event-sharegroups that the user may want to join based on the approximate locationof the user. To illustrate, the method may obtain the user's locationinformation in various ways, such as via a Global Positioning System(GPS) receiver deployed in the user's mobile endpoint device,triangulation via cell towers, and the like. Thus, the method mayestimate the location of the user based upon particular base station(s)serving the user, based upon other nearby mobile endpoint devices thatare in the same event-share group, or by receiving direct user input asto street addresses or physical coordinates (e.g., longitude, latitude).

In one embodiment, the method may alternatively, or additionally,identify potential event-share groups that the user would like to joinbased upon keywords that the user may include with the request toparticipate in event media sharing. For example, the user may include inthe request to join an event-share group using the term “soccer field 1in Central Park”, the name of the town where the game is taking place,the name of an arena or stadium, a section of seats in an arena orstadium, the name of an event (e.g., Oktoberfest in Munich, Super Bowl,World Series, and the like), and/or the name of the team. In thismanner, the method is likely to identify the correct event orsubstantially narrow the possible choices to a select few possibilities.

In certain situations, a user requesting to join an event-share groupfor an event may appear to be the first user requesting to participatewith respect to a particular event because the user may, for example,submit a request including the name of his or her child's team only.However, there may already be an event-share group set-up for the eventthat is related to the team name of the opposing team as a keyword.Accordingly, in one embodiment the method may determine that it islikely that two different existing event-share groups are related to thesame event. For example, the method may detect similar taggingattributes, such as text descriptions, similar pictures using variouspicture attribute comparison algorithms, etc. In this case, the methodmay provide a choice to a new user requesting to participate inevent-sharing for an event whether two or more event-share groups beingpresented should be combined into a single event. For example, a userrequesting to join an event-share group related to a soccer game may bepresented with a choice of two groups (e.g., team “blue” event-sharegroup and team “yellow” event-share group), or an alternative option ofcreating a combined group (e.g., a “team blue versus team yellow”event-share group). In one embodiment, the method may not join twoexisting event-share groups unless a predetermined number of new usersattempting to join either group indicate that the event-share groupsshould be combined.

In step 240, the method 200 adds the user requesting to join anevent-share group to an existing event-share group as a new member andprovides the event tag created for the event-share group to the user.This allows a user's mobile endpoint device to tag captured media asbeing associated with the event-share group.

In one embodiment, the event tag, as it appears to a user on the user'sdevice, is represented in a user-customizable format. For example, theuser device may maintain a mapping to a universal event tag that allowsthe method to correlate all the event tags related to a single event. Insuch an embodiment, the user may use an event tag or otherwiseselectively personalize an event as “John's soccer game,” while anothergroup member may identify the same event as “Joe's soccer game.” Sincethe event is the same event, and each user is participating in the sameevent-share group, whenever media or user tags are transmitted, theuniversal event tag is included by a user's device, while on the otherusers' devices, the event tags are presented to the other users (e.g.,via respective user interfaces) in the format(s) that the other usersprefer (e.g., “John's soccer game”).

The method 200 then proceeds to step 250 where the method receives andstores captured media, user tag information pertaining to shared media(i.e., captured media that is made available and shared among othergroup members) or voting information pertaining to shared media. Forexample, any user in the event-share group may capture new mediarelating to a subject event and may desire to share the media with othermembers of the group. The captured media may comprise digital stillphotographs, video, audio clips, and other media. The media may becaptured by a group member via his or her mobile endpoint device (e.g.,a cellular phone, mobile phone, smart phone and the like) which may beequipped with a picture and video camera in addition to a microphone forcapturing speech and other audio signals.

In one embodiment, a group member may indicate his or her intention toshare the captured media by transmitting an email or SMS or MMS messageto an address designated for receiving event-share media with the mediacomprising an attachment to the message. In one embodiment, the groupmember's mobile endpoint device is configured to automatically add eventtag information to the captured media. By including event taginformation in the captured media, the method can quickly distinguishwhich event-share group the media pertains to. As mentioned above, theevent tag may comprise any identifier that is attached to or includedwith media that uniquely identifies the particular event-share group towhich the captured media relates. Accordingly, the method may identifythe correct event-share group to which the captured media relates andstore the media in a suitable manner.

At step 250, the method 200 may also receive user tag informationpertaining to captured or shared media. Specifically, the method mayallow members of an event-share group to add their own user tags to thecaptured or shared media. Note, however, that user tags are differentthan the universal event tag that is attached to all media shared amongmembers of the event-share group. For example, the user tag may compriseinformation that is customizable by a member of an event-share group andwhich is presented to other group members whenever the media to whichthe user tag is attached is presented/displayed. The user tags maycomprise information stored in an access portion of a picture file, orcorrelated type information that is stored with a media file, such as avideo.

In one embodiment, a user tag may comprise watermarking type informationon the media itself that could be encoded in and transmitted along withthe media itself or alongside the media. Alternatively a user tag couldbe simply a text tag that is stored in an access file along with media,e.g., a picture, a video, an audio clip, etc. For example, a pluralityof user mobile endpoint devices may be configured to capture pictures inEXIF (Exchangeable Image File Format). Thus, in one embodiment taginformation (e.g., user tag information) may be included in one or moreof the JPEG fields per the EXIF standards. Alternatively, or inaddition, in one embodiment a user definable field is created andconfigured to be populated with user tag information. In one embodiment,a user tag could comprise an audio clip with user commentary provided byan event-share group member to accompany a picture or video. In oneembodiment, the user tag may be hidden information in a picture that maybe detected by the method and made available to other systems. In thecase of captured/shared media comprising music or audio files, the usertag may comprise identifying information stored in a standard format,such as audio watermarking.

In one embodiment, the method, at step 250, receives captured or sharedmedia along with the associated user tag information. In anotherembodiment, the method only receives user tag information along with anindication as to which media the tag applies to. For example, a firstevent-share group member may receive shared media relating to thesubject event (e.g., a picture taken during a soccer game) that wascaptured by another group member. In addition, the first group membermay notice that his or her child appears in the picture and would liketo “tag” the child (i.e., add a user tag that identifies the child insome way). Accordingly, the user may use an application on his or hermobile endpoint device to place a user tag on the picture thatidentifies the child by name. Alternatively, the first user may add auser tag that is not placed on the picture itself, but comprises textthat is conveyed along with the picture. For example, the user tag maycomprise a bottom, top or side caption with identifying information orcommentary. In any event, the method receives and stores such user taginformation along with the shared media. It should also be noted thatthe user tag information may be added to/associated with the subjectmedia by the user who captures the media, or by any other user/groupmember who receives the media as shared media.

At step 250, the method 200 may also receive voting informationpertaining to shared media or user tags. For example, a networkproviding event-share services to its subscribers may wish to have amechanism whereby users posting inappropriate (e.g., undesirable)content and/or user tags may have their content blocked or even havethemselves removed from an event-share group. In addition to allowingevent-share group members to add their own user tags to shared mediacaptured by other group members, the method also allows a user to voteon the content of others, e.g., whether it is appropriate orinappropriate.

For example, a certain number or percentage of event-share group membersmay submit votes on a particular piece of media as being inappropriate,e.g., a video clip of inappropriate behaviors by players at a game. Ifthe number or percentage of “inappropriate” votes exceeds a configurablethreshold for a particular shared media, that piece of media may beblocked and/or removed from the system.

Similarly, in the case of user tags added to captured/shared media,event-share group members may deem the comments or content of certainuser tags to be inappropriate (e.g., undesirable). Thus, group membersmay also vote that a particular user tag is inappropriate, as opposed tothe underlying media itself. In one embodiment, when the method receivesa requisite number or percentage of votes indicating that a particularuser tag is inappropriate (e.g., a derogatory comment about a player orthe opposing team), the method will remove that user tag from theparticular media to which it is attached or will block the user tag.However, in this case the captured/shared media itself will not beblocked or removed, since it is only the associated user tag that isdeemed inappropriate.

In one embodiment, a member of an event-share group may be voted out ofthe group if the user posts inappropriate captured media orinappropriate user tags as determined by the voting of other event-sharegroup members. For example, if a particular user posts two or threeunique pieces of captured media or user tags that are each deemed to beinappropriate by members of the event-share group (e.g., each piece ofcaptured media and/or each user tag exceeds the voting thresholdrequired to block or remove that particular item), the method may thenremove the user from the group, in addition to blocking or removing thecaptured media or user tags which exceeded the voting threshold forinappropriate material. In one embodiment, the method may provide awarning to an event-share group member upon the user's first orsubsequent piece of captured media or user tag exceeding the votingthreshold for blocking/removal. Especially since the members ofevent-share groups need not have any preexisting relationship with oneanother, by way of such embodiments, the method 200 may reasonablyprevent event-share groups from being co-opted by errant users.

At step 260, in one embodiment whenever the method 200 receives newlycaptured media or new user tags in step 250, the method provides thenewly captured media and/or new user tag information to members of theevent-share group. In this manner, the event-share group members mayreview and enjoy media captured by other group members (i.e., sharedmedia), as well as the perspectives of the other group members asconveyed through user tags. For example, a photo of a soccer game may becaptured and shared by a parent of a player on one team (i.e., auser/event-share group member). The user may also have added a user tagindicating his or her child in the picture. Thus, in one embodiment themethod receives and multi-casts the picture and/or user tag to allevent-share group members. In addition, all of the participatingevent-share group members are given the opportunity to place their ownuser-generated user tags onto the shared media (e.g., the shared photo).For example, in one scenario, a player on the opposing team may be inthe shared photo and other group members, e.g., the parents of theplayer on the opposing team, may then tag their child in the samepicture with a new user tag.

In one embodiment, the captured media or new user tags are multi-cast tomembers of the group. In terms of bandwidth efficiency, when newlycaptured media is conveyed or transmitted along with its associated usertags, if any, back to the entire group of users, it is preferably in amulti-cast mode. In other embodiments, the method may distribute newlyadded content to event-share group users in a uni-cast mode, or apoint-to-point mode. Note, however, that in the case of a largeevent-share group this could result in a substantial amount of messagingback and forth that could impact the system negatively in term ofbandwidth.

In one embodiment, as an alternative, or in addition to automaticallymulti-casting newly received content or user tags to all members of theevent share group upon receipt at step 260, the method may distributethe newly received content and user tags according to a schedule. Forexample, the method may distribute any new media or user tags only onceevery five minutes, or any other period of time which may comprise aconfigurable parameter. In another embodiment, the method does notautomatically distribute newly added content and user tags toevent-share group members but only distributes newly added content anduser tags to particular group members upon receipt of a request toupdate content from a group member. Thus, some users may opt out ofimmediately receiving each and every newly shared media or user tag itemand instead receive new media on demand, such as once every 10 minutes.In such an embodiment, a user who does not wish to be continuouslyinterrupted with new content and user tags could still receive newcontent and user tags in an orderly fashion at his or her convenience.

At step 280, the method 200 determines if an event has ended. In oneembodiment, the method determines an event has ended by determining thatthe geographic density of event-share group members has diminished belowa certain predetermined threshold. For example, if an event-share grouprelating to a soccer match at one time has 100 members and the 100members are located within a five-acre area (e.g., a soccer field, whichis approximately two-acres and surrounding areas), thereby resulting inthe density of 20 members/acre. The method may determine that the eventhas ended when the measured density diminishes past a certain threshold,e.g., a point where the method is reasonably certain that the event hasended. In the above scenario, the method may determine that the eventhas ended when the geographic separation (e.g., as indicated by theevent-share group-member density) diminishes to five members/acre, ortwo members/acre, for example. When this condition is detected, it islikely that the members of the temporary event-share group are departingfrom the event or are in the process of doing so. It should be notedthat the threshold used to determine when the event has ended may beadjusted as necessary, either on a per event-share group basis or on anetwork-wide basis, or in any other manner as necessary, in accordancewith various embodiments.

In one embodiment, the method may determine that the event has endedbased upon a tapering off in event-sharing activity. For example, themethod may detect a decrease or stoppage in sharing of newly capturedmedia. Alternatively, or in addition, the method may detect a decline orstoppage of user tagging activity relating to shared media. The methodmay also determine that an event has ended based upon a stop in newusers attempting to join the group or receiving a number of requestsfrom group members to stop participating in the event-share group. Inaddition, each of the above factors may have a configurable thresholdwhich, if crossed, indicates that an event should be considered to haveended.

In one embodiment, the method may determine that an event has endedbased upon a weighted combination of a plurality of any of the abovefactors. For example, an indication of a decline or stoppage in newlycaptured media may be a factor that is more strongly indicative of theend of an event whereas a decline or stop in new users attempting tojoin a group may be less so. Thus, in one embodiment, the determinationthat an event has ended can be made based upon a 75%-25% weighting ofthese two factors and/or their respective thresholds. It should be notedthat various thresholds, and/or combinations of weightings and factorsmay be combined in order to determine when an event has ended.

If the event is determined to have ended at step 280, the method 200proceeds to step 295 where the method terminates. As part of thetermination process, the method may continue to store captured/sharedmedia and user tags for a predetermined period of time after the eventis determined to have ended at step 280. For example, thecaptured/shared media and user tags may be stored by the method for apredefined time period, e.g., 1 hour, 2 hours, one day, etc. In oneembodiment, after the event is determined to have ended and during thepredetermined time period, the method may permit group members tocontinue to access and download shared media and user tags but may nolonger accept newly captured media. After the expiration of thepredetermined period of time, the method will no longer store the sharedmedia and user tags, i.e., the shared media and user tags are deleted.

Although steps of the exemplary method 200 have been described as takingplace at, or being performed by an event-share server, such as AS 112,or at a S-CSCF 121, some or all of the steps may take place at, or beperformed by, any other component of IMS core network 110 in FIG. 1.

FIG. 3 illustrates a flowchart of a method 300 for supporting andenabling collaborative media sharing among users, e.g., at an event. Inone embodiment, one or more steps of the method 300 may be performed bya mobile endpoint device (e.g., a cellular phone, a mobile phone, asmart phone, and the like). In one embodiment, the mobile endpointdevice preferably is equipped with a digital camera or video capturedevice and/or a microphone or other mechanisms of audio and videocapture/recording in order to support various functions describedherein. In particular, a user may be a wireless network subscriber of awireless network provider and may be subscribed to or enrolled in anevent-share service feature offered by the wireless network provider. Inaddition, the user's mobile endpoint device may be configured toparticipate in event-share media sharing as described herein. The methodbegins in step 305 and proceeds to step 310.

At step 310, the method 300 sends/transmits a request to join or startan event-share group relating to a particular event. For example, a usermay arrive at a child's soccer game and may desire to startparticipating in event media sharing. This requires that the methodconveys the request to join or start an event-share group relating tothe soccer game (e.g., to an event-share server, such as AS 112 in FIG.1). In one embodiment, the method may be optionally presented with alist of choices of possible event share groups that a user may wish tojoin (e.g., in response to transmission of a request to join or start anevent-share group) if one or more event-share groups have already beencreated. In one embodiment, the method may further transmit a selectionof one the one or more event-share groups presented for selection, ormay transmit an indication that the user does not wish to join any ofthe possible existing event-share groups, but instead would like a newgroup to be created. Thus, in such scenarios the user is either added toan existing event-share group that is elected by the user, or is addedas the first member of a new event-share group.

At step 315, the method receives an event tag for the event and/orevent-share group. For example, an event-share server may manage anevent-share group for a particular event and assign a unique event tagwhich identifies that particular event and/or event-share group. Theevent tag is intended to be included in all captured media that groupmembers intend to share with other members of the group. In oneembodiment, the method may store the received event tag for use throughthe duration of the existence of the event-share group. Following thereceipt of the event tag at step 315 the method may proceed to eitherstep 320 or 340.

At step 320, the method captures media relating to the event. Forexample, a mobile endpoint device, properly equipped or accessorized,may be used to capture digital photographs, video, audio clips, andother types of media. For example, a user who is a member of anevent-share group (e.g., a parent of a child in a soccer game) may takea photograph of the game. In addition, the user may wish to share thisphotograph with the event-share group. At step 320, the method may alsooptionally send the photograph (i.e., the captured media) to anevent-share server (such as AS 112 in FIG. 1) that is managing theevent-share group. In this case, the method may include the event taginformation received in step 315 along with the photograph so that thephotograph is properly identified as being associated with theevent-share group for the soccer game. Alternatively, the method maywait until step 335 to send the captured media, such as a photograph ofthe soccer game, to an event-share server, as described below.

At step 325, the method determines if there is any user tags to be addedto any captured or shared media. For example, the method may query auser (e.g., via an interface on the user's mobile endpoint device)whether the user would like to add user tag to any media captured atstep 320 or received at step 340 (as described below). If the user doesintend to add a user tag, the method proceeds to step 330.

At step 330, the method 300 optionally collects and adds the user tag tothe captured or shared media. For example, the method may await a userto add a user tag via a user interface (e.g., a key pad, a touch screendisplay, a microphone, and the like) to any shared media that iscurrently being shared among event-share group members. In the examplewhere the method has captured media (e.g., a photograph of a soccergame), the method may await the input of one or more user tags, such asuser tags identifying any players in the picture, or identifying himselfor herself as the author of the picture. In any event, after the userinputs the desired user tag, the method adds the user tag to theappropriate shared or captured media and proceeds to step 335.

At step 335, the method conveys/transmits the user tag and the media atstep 330 to the appropriate server (e.g., an event-share server, such asAS 112 in FIG. 1). The user tag may be conveyed along with an instanceof the shared media to which it relates, or may be sent on its own withan indication as to which media it relates to. Therefore, if capturedmedia was not first sent to an event-share server at step 320, themethod may await any user tag information (e.g., added by the user whocaptured the media) before sending the captured media to the event-shareserver at step 335. In another embodiment, the method may simply conveyanother copy of the captured/shared media along with any user tags,regardless of whether the method has previously sent the captured/sharedmedia to the event-share server. Thus, the user tag is made available toother members of the event-share group, e.g., via the event-shareserver. In one embodiment, the method may convey the captured/sharedmedia and/or user tag information via an email or SMS or MMS message(e.g., to an address designated for receiving event-share media) withthe media comprising an attachment to the message.

If the user declines to add any user tags at step 325, the method 300proceeds to step 390. At step 390, the method determines if the eventhas ended. In one embodiment, a user may manually indicate his or herintention to end participation in an event-share group, regardless ofwhether the actual subject event is continuing. However, from theperspective of the method 300, if the user indicates an intention to endparticipation in the event-share group, the event is deemed to haveended. In this case, the method proceeds to step 395 where the methodterminates.

Alternatively, at step 390 the method may determine that an event isended if the method receives an indication that an event is ended (e.g.,from an event-share server that is supporting and enabling collaborativemedia sharing among users at an event). For example, an event-shareserver may determine that the measured density of event-share groupmembers has decreased beyond a requisite threshold. Alternatively, or inaddition, the event-share server may detect a tapering-off in messagingrelating to an event (e.g., less media being captured and shared, lessuser tagging activity, no new user attempting to join an event-sharegroup, etc.). In these circumstances, the event-share server may conveyan indication that the event has ended and that the temporaryevent-share group is being dissolved, which the method may receive atstep 390. In this case, the method may determine that the event hasended and proceeds to step 395 where the method terminates. On the otherhand, if the method does not determine that the event has ended or theevent-share group has been dissolved, the method returns to step 320 orstep 340.

The alternative branch of the method which includes step 320 has alreadybeen described above. Notably, this branch of the method may repeat inthe same manner as previously discussed if the event/event-share groupis ongoing.

In the alternative, the method 300 may proceed to step 340 where themethod may receive shared media and/or user tags (e.g., from an eventshare server). For example, the shared media may comprise digital stillphotographs, video, audio clips, and other media captured by otherevent-share group members and the user tags may comprise user taginformation added by these other event-share group members.

At step 345, the method 300 may prompt a user whether they would like tovote on any shared media or user tags. For example, a network providingevent-share group functionality to its subscribers may wish to have amechanism whereby users posting inappropriate content and/or user tagsmay have their content blocked or even have themselves removed from anevent-share group. For example, a certain number or percentage ofevent-share group members may submit votes on a particular piece ofmedia as being inappropriate (e.g., undesirable). If the number orpercentage of “inappropriate” votes exceeds a configurable threshold fora particular shared media, that piece of media may be blocked and orremoved from the system. Similarly, in the case of user tags added tocaptured/shared media, event-share group members may deem the commentsor content of certain user tags to be inappropriate. Thus, group membersmay also vote that a particular user tag is inappropriate, as opposed tothe underlying media itself.

In addition, in one embodiment a member of an event-share group may bevoted out of the group if the user posts inappropriate captured media orinappropriate user tags as determined by the voting of other event-sharegroup members. For example, if a particular user posts two or threeunique pieces of captured media or user tags that are each deemed to beinappropriate by members of the event-share group (e.g., each piece ofcaptured media and/or each user tag exceeds the voting thresholdrequired to block or remove that particular item), the method may thenremove the user from the group, in addition to blocking or removing thecaptured media or user tags which exceeded the voting threshold forinappropriate material. Accordingly, in one embodiment, the method mayquery an event-share group member whether they would like to vote on anyshared media or user tags.

If answered positively, the method proceeds to step 350 where the methodreceives the voting information. For example, an event-share groupmember may indicate to the method (e.g., via a keypad entry,voice-activated response or other input) that shared media or a user tagis either appropriate or inappropriate. In one embodiment, the votinginformation may comprise multiple options. For example, the event-sharegroup member may indicate that the shared media or user tag is veryappropriate, somewhat appropriate, somewhat inappropriate, veryinappropriate or completely unacceptable. In one embodiment, the votinginformation may be conveyed on a numerical scale. For example, themethod may use a 1 to 5 scale with 1 being completely unacceptable and 5being very appropriate.

Following receipt of the voting information at step 350, the methodproceeds to step 335. At step 335, the method may also convey/transmitthe received voting information (e.g., to an event-share server), inaddition to conveying any captured media or any user tag information asdescribed above. However, if at step 345 the method does not receive anindication that the user would like to add voting information to anycaptured media or user tags, the method proceeds to step 325, asdescribed above.

It should be noted that although not specifically specified, one or moresteps of methods 200 and 300 may include a storing, displaying and/oroutputting step as required for a particular application. In otherwords, any data, records, fields, and/or intermediate results discussedin the method can be stored, displayed and/or outputted to anotherdevice as required for a particular application. Furthermore, steps orblocks in FIGS. 2 and 3 that recite a determining operation or involve adecision do not necessarily require that both branches of thedetermining operation be practiced. In other words, one of the branchesof the determining operation can be deemed as an optional step.

FIG. 4 depicts a high-level block diagram of a general-purpose computersuitable for use in performing the functions described herein. Asdepicted in FIG. 4, the system 400 comprises a processor element 402(e.g., a CPU), a memory 404, e.g., random access memory (RAM) and/orread only memory (ROM), a module 405 for supporting and enablingcollaborative media sharing among users, e.g., at an event, and variousinput/output devices 406 (e.g., storage devices, including but notlimited to, a tape drive, a floppy drive, a hard disk drive or a compactdisk drive, a receiver, a transmitter, a speaker, a display, a speechsynthesizer, an output port, and a user input device (such as akeyboard, a keypad, a mouse, and the like)).

It should be noted that the present disclosure can be implemented insoftware and/or in a combination of software and hardware, e.g., usingapplication specific integrated circuits (ASIC), a general purposecomputer or any other hardware equivalents. In one embodiment, thepresent module or process 405 for supporting and enabling collaborativemedia sharing among users at an event can be loaded into memory 404 andexecuted by processor 402 to implement the functions as discussed above.As such, the present method 405 for supporting and enablingcollaborative media sharing among users at an event (includingassociated data structures) of the present disclosure can be stored on acomputer readable storage medium, e.g., RAM memory, magnetic or opticaldrive or diskette and the like.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, and notlimitation. Thus, the breadth and scope of a preferred embodiment shouldnot be limited by any of the above-described exemplary embodiments, butshould be defined only in accordance with the following claims and theirequivalents.

What is claimed is:
 1. An apparatus for supporting media sharing via acommunication network, comprising: a processor; and a computer-readablestorage medium storing a plurality of instructions which, when executedby the processor, cause the processor to perform operations, theoperations comprising: providing an event tag to endpoint devices of aplurality of members of an event-share group, wherein the event-sharegroup is related to an event, where the event tag uniquely identifiesthe event-share group, wherein the processor is operated by a serviceprovider of an event-share service feature; receiving a captured media,with the event tag associated with the captured media, from one of theendpoint devices of one of the plurality of members; and providing thecaptured media to the endpoint devices of the plurality of members. 2.The apparatus of claim 1, wherein the captured media is associated withuser tag information that is created by a member of the plurality ofmembers.
 3. The apparatus of claim 2, wherein the user tag informationis created by a member who captured the captured media.
 4. The apparatusof claim 2, wherein the user tag information is created by a member whoreceived the captured media.
 5. The apparatus of claim 1, furthercomprising: terminating the event-share group in response to anindication of an end of the event.
 6. The apparatus of claim 1, whereinthe communication network comprises an internet protocol multimediasubsystem network.
 7. The apparatus of claim 1, wherein the capturedmedia is stored by an application server deployed in the communicationnetwork.
 8. The apparatus of claim 7, wherein user tag informationassociated with the captured media is stored by the application server.9. The apparatus of claim 1, further comprising: receiving a requestfrom an endpoint device of a user who wishes to join the event-sharegroup; and verifying that the user has subscribed to the event-shareservice feature prior to providing the event tag to the endpoint deviceof the user.
 10. The apparatus of claim 2, wherein the user taginformation comprises information that is customizable by the pluralityof members.
 11. The apparatus of claim 5, wherein the indicationcomprises a detection of a geographic separation of the plurality ofmembers.
 12. The apparatus of claim 2, further comprising: receivingvoting information pertaining to the captured media indicative ofwhether the captured media comprises undesirable content; and removingthe captured media that is indicated as being undesirable in the votinginformation.
 13. A tangible computer readable storage medium storinginstructions which, when executed by a processor, causes the processorto perform operations for supporting media sharing via a communicationnetwork, the operations comprising: transmitting a request toparticipate in an event-share group relating to an event; receiving anevent tag which uniquely identifies the event-share group, wherein theevent tag is received from a service provider of an event-share servicefeature; and transmitting a captured media, with the event tagassociated with the captured media, to an application server deployed inthe communication network.
 14. The tangible computer readable storagemedium of claim 13, wherein the captured media is associated with usertag information that is created by a member of a plurality of members ofthe event-share group.
 15. The tangible computer readable storage mediumof claim 14, wherein the user tag information is created by a member whocaptured the captured media.
 16. The tangible computer readable storagemedium of claim 13, wherein the communication network comprises aninternet protocol multimedia subsystem network.
 17. The tangiblecomputer readable storage medium of claim 14, wherein the user taginformation associated with the captured media is stored by theapplication server.
 18. The tangible computer readable storage medium ofclaim 15, wherein the user tag information comprises information that iscustomizable by the member who captured the captured media.
 19. Atangible computer readable storage medium storing instructions which,when executed by a processor, causes the processor to perform operationsfor supporting media sharing via a communication network, the operationscomprising: transmitting a request to participate in an event-sharegroup relating to an event; receiving an event tag which uniquelyidentifies the event-share group, wherein the event tag is received froma service provider of an event-share service feature; and receiving acaptured media, with the event tag associated with the captured media,from an application server deployed in the communication network. 20.The tangible computer readable storage medium of claim 19, furthercomprising: sending voting information pertaining to the captured mediaindicative of whether the captured media comprises undesirable content.